"use client"
import { useOrganization } from "@clerk/nextjs";
import { EmptyOrg } from "./_components/empty-org";
import { BoardList } from "./_components/borad-list";

/**
 * DashboardPage组件的属性接口
 * @property {Object} searchParams - 搜索参数对象，可能包含search和favorites属性
 */
interface DashboardPageProps{
    searchParams:{
        search?:string;
        favorites?:string;
    }
}

/**
 * DashboardPage - 仪表板页面组件
 * 根据当前的组织状态和搜索参数，渲染组织的看板列表或者空组织提示
 * 
 * @param {DashboardPageProps} props - 组件属性，包括搜索参数
 * @returns {JSX.Element} - 渲染的JSX元素
 */
const DashboardPage=({
    searchParams
}:DashboardPageProps)=>{
    const {organization} =useOrganization();
    return (
        <div className="flex-1 h-[calc(100vh-80px)] p-6" >
            {/* 根据组织状态，决定渲染看板列表还是空组织提示 */}
            {
                !organization?
                <EmptyOrg/>:(  // 如果没有组织，显示空组织提示
                    <BoardList
                    orgId={organization.id}
                    query={searchParams}
                    />
                )  // 如果有组织，根据搜索参数显示看板列表
            }
         
        </div>
    )
}

export default DashboardPage;